1. Field of the Invention
The present invention relates to a method for describing an ACPI (Advanced Configuration and Power Interface) machine language table for use in a computer having a multibridge PCI (Peripheral Component Interface) structure.
2. Description of the Related Art
ACPI specs are established on computers such as personal computers (PC), including laptop/desktop computers, and servers, to provide industry-standard interface for system configuration and power management. The ACPI specs define ACPI interfaces including interfaces between hardware, a BIOS (Basic Input Output System) software, and an OS (Operating System) software.
An ACPI functions not only for power management of a system but also to abstractly interpret hardware configuration. The ACPI supplies hardware configuration information to an OS. Based on the configuration information from the ACPI, the OS can initialize hardware.
The ACPI describes the abstract hardware configuration information, in an ACPI Machine Language (AML) which is called “p-codes”. The AML is not an assembly language (machine language) specific to a certain platform but is constituted by pseudo codes for virtual machines supported by an ACPI-compatible OS. Namely, an AML is a pseudo-code assembly language which is interpreted by an ACPI driver (a device driver for processing an ACPI) on an OS.
The ACPI source language (ASL) is a programming language that is used by BIOS developers to create AML images. Using a dedicated AML compiler, an AML is generated from an ASL. The ASL is used to describe system hardware configuration information.
According to a conventional ACPI description method based on a BIOS, hardware configuration of a system is provided to an OS, as exact configuration information without changes. The OS according to ACPI specs controls hardware, based on the configuration information provided by the BIOS.
FIG. 1 shows an example of a conventional ACPI-compatible system employing a multibridge PCI structure (hardware configuration in which PCI-to-PCI bridges are connected each other). This hardware configuration information is provided to an OS by BIOS, exactly maintained in an original form of the information.
There is another type of device which transparently connects PCI devices behind a PCI-to-PCI bridge (for example, refer to JP-A-2000-222346).
However, an OS which does not support a multibridge PCI structure gives rise to the following problems. That is, the OS cannot allow PCI hot plugs (insertion/removal of PCI devices in a system online state) for PCI devices subordinate to a multibridge or cannot recognize PCI devices themselves.
Namely, a first problem is that if an OS which does not support PCI hot plugs subordinate to a multibridge is operated on a system, PCI devices cannot be connected by hot plugs in some cases.
A second problem is that when devices are bridged too deep by multibridges, an OS cannot recognize a PCI device in the lowermost level due to limitations to implementation specs of the OS.